Identifying links of interest in a web page

ABSTRACT

Links in a web page relevant to search criteria are marked. In one embodiment, a search engine returns to a browser a set of URLs of web pages meeting search criteria. The browser stores the URLs, and displays links to a subset. When a searcher accesses a first web page presented by the browser, the browser examines the first web page for links to other web pages. When the first web page contains a link to a second web page, the URL of the second web page is compared with the stored URLs. If the URL of the second web page is a stored URL, the link is marked on the first web page. In another embodiment, a first web page is accessed using a browser, the browser identifies a link therein to a second web page, and accepts search criteria from the searcher. The browser sends the URL of the second web page and the search criteria to a search engine, which determines whether the second web page satisfies the search criteria. If so, the link is marked on the first web page.

FIELD OF THE INVENTION

[0001] The present invention relates generally to the Internet and World Wide Web, and more particularly to identifying and calling attention to links of interest included within a web page.

BACKGROUND

[0002] One of the most remarkable success stories of recent times is the rapid growth and widespread acceptance of the Internet-based World Wide Web. Pages of the web contain a wealth of information on a great many topics of both casual and professional interest.

[0003] Simply by entering keywords into a web browser that works in concert with an Internet search engine, an Internet searcher can search the web, and thereby locate relevant web pages. However, a search may well find far more information than the searcher can consider, due to the abundance of information that is now accessible through the web. For example, an Internet search defined by a few keywords might uncover hundreds of related web sites.

[0004] In order to make the results of a search tractable, the browser's presentation of the search results is limited to a relatively small number of web pages, even though the search engine may have found a larger number of relevant web pages. Further, the pages that are presented are often ranked according to their relevancy to the search using rules that are known by the search engine but often unknown by the searcher. For example, although the search engine might find 895 web pages that satisfy the search criteria, the browser might rank and present only 200 of these pages to the searcher. Because of these limitations, the searcher is unable to gain the full benefit of the wealth of information that is potentially available through the Internet.

[0005] As an aid to searchers, web pages themselves often include links to other web pages that are somehow related. For example, a search for information on the agricultural products of the fictional state of Heartland might locate a web page sponsored by the Heartland Department of Agriculture. The web page of the Heartland Department of Agriculture—the first web page—might itself provide links to other web pages potentially of interest. One of the links from the first web page might be to a second web page, that of the California Institute for Citrus Research, while another of the links from the first web page might be to a third web page that provides a biography of the Heartland Commissioner of Agriculture. Clearly, the second web page might be of interest to the searcher, whereas the third web page might not.

[0006] Unfortunately, the relevancies of the links that appear on the first web page are not necessarily so clear as in the example above regarding Heartland. In practice, a searcher has no way to determine with any degree of confidence which web-page-to-web-page links to pursue and which not, as the transition from one web page to another takes the searcher away from the rankings of suitability provided by the search engine, however useful these rankings might or might not turn out to be.

[0007] Sometimes a search is not conducted systematically, meaning that the search does not begin with a search engine's enquiry. Rather, the search may begin by accessing a web page known to the searcher or discovered accidentally, and proceed by following links from that page. This unsystematic searcher faces the same problem as the systematic searcher who begins with a search engine—the searcher has no way to determine with any degree of confidence which web-page-to-web-page links to pursue and which not—but the unsystematic searcher lacks even the initial rankings of suitability provided by the search engine.

[0008] Thus there is a need for a way of providing an indication of relevance of links that take an Internet searcher from one web page to another, whether a search begins systematically or not, so that the searcher may efficiently explore the wealth of information that is available—in principle—through the Internet, but which often goes unfound in practice, without being led astray by links to pages lacking relevancy.

SUMMARY OF THE INVENTION

[0009] The present invention marks web-page-to-web-page links that are relevant to search criteria such as keywords, so that a searcher may navigate efficiently through the vast store of information that is accessible through the Internet.

[0010] According to one embodiment of the invention, a searcher provides search criteria such as a set of keywords to a web browser. The browser sends the search criteria to a search engine, which returns to the browser a set of uniform resource locators (URLs) that identify web pages meeting the search criteria. The browser stores the URLs of the web pages in memory, and conventionally displays a search-results page (or pages) that includes links to a subset of the web pages found by the search engine. When the searcher accesses a first web page using a link that is presented by the search-results page, the browser examines the first web page for links to other web pages. When the first web page contains a link to a second web page, the URL of the second web page is compared with the URLs stored in the memory. If the URL of the second web page matches one of the URLs stored in the memory, the browser marks the link on the first web page, for example by highlighting it on a visual display, thereby alerting the searcher that this link may be of interest. Because the search engine may return many more URLs than the search results page can usefully present to the searcher, the marked link may in fact lead the searcher to a useful web page that the search engine found but the browser was unable to present.

[0011] According to another embodiment of the invention, a searcher may access a first web page using a browser. When so instructed by the searcher, the browser examines the first web page, identifies a link to a second web page, and accepts search criteria from the searcher. The browser sends the URL of the second web page and the search criteria to a search engine. The search engine determines whether the web page specified by the URL—the second web page—meets the search criteria. If so, the search engine informs the browser, and the browser marks the link on the first web page.

[0012] Thus, the present invention identifies and calls the searcher's attention to web-page-to-web-page links that satisfy given search criteria, and thereby improves the searcher's efficiency in navigating the vast wealth of information that is accessible through the Internet. These and other aspects of the present invention will be more fully appreciated when considered in light of the following drawings and detailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013]FIG. 1 is a block diagram that shows a structure and environment suitable for use of the present invention.

[0014]FIG. 2 is a flowchart that shows aspects of the operation of a first embodiment of the invention.

[0015]FIG. 3 is a flowchart that shows aspects of the operation of a second embodiment of the invention.

DETAILED DESCRIPTION

[0016] The present invention marks web-page-to-web-page links that are relevant to given search criteria such as keyword matching, so that a searcher may navigate efficiently through pages of the World Wide Web accessible through the Internet.

[0017]FIG. 1 shows a structure and environment suitable for use of the present invention. A searcher 100 uses a terminal 110 such as a computer terminal, or equivalently a web-enabled cellular telephone, a personal digital assistant, a special-purpose Internet-access device, and so forth, to interact with a search engine 180 such as an Internet search engine and to view web pages accessible through the Internet 170. The terminal 110 may be connected by the Internet 170 or other communication network to the search engine 180.

[0018] The terminal 110 may include a visual display 120, such as a computer monitor screen, that is appropriate to the nature of the terminal 110, a keyboard 130 or equivalently a keypad, a web browser 140, which may include a plugin 141 that provides programmable-processor code for implementing the present invention, a computer mouse 150 or equivalent device such as a trackball, up and down keys, jog wheels, and so forth, and a memory 160 suitable for storing lists of Uniform Resource Locators (URLs). The memory 160 may be internal to the web browser 140, or may be located elsewhere internal or external to the terminal 110, and may be included within a larger memory that is used for other purposes. FIG. 2 shows aspects of the operation of a first embodiment of the invention. Using the keyboard 130 or other input means, the searcher 100 enters search criteria such as keywords and associated logical operations into the browser 140 (step 200). The browser 140 sends the search criteria to the search engine 180 (step 205). The search engine 180 conducts a search, looking for pages of the World Wide Web that satisfy the search criteria (step 210). Upon completion of the search, the search engine 180 sends, to the browser 140, a set of URLs of web pages the search engine 180 has found that satisfy the search criteria (step 215). In practice, the search engine 180 may find a very large number of URLs associated with web pages that satisfy the search criteria. For this reason, the number of URLs returned to the browser 140 by the search engine 180 may be capped, for example at a maximum of 1000 URLs.

[0019] The browser 140 receives the set of URLs found by the search engine 140 (step 220), and stores a subset of the set of URLs in the memory 160 (step 225). It is important to note that the word “subset” is used here in a mathematical sense, wherein a subset of a set may include all the elements of the set, and wherein a proper subset of a set may not include all of the elements of the set. In other words, if a set contains N elements, a subset of the set may contain all of the N elements, but a proper subset of the set may contain at most N-1 of the elements. Thus the set of URLs returned to the browser 140 may be stored in its entirety in memory 160, or not in its entirety when the set is too large to be contained in the memory 160. For example, the memory 160 might have capacity to store 500 URLs. Were the set of URLs returned to the browser 140 to contain 400 URLs, the subset stored in the memory 160 could be the subset that included all 400 of the URLs. On the other hand, were the set of URLs to contain 700 URLs, only a proper subset could be stored in memory 160, where the proper subset could contain 500 URLs at most.

[0020] The browser 140 displays on the display 120 a search-results page that may include links to web pages whose URLs appear also in the set of URLs returned by the search engine 180 (step 230). The search results page may include links to all of the URLs returned by the search engine 180, or may include links to only some of the URLs returned the search engine 180, depending on the configuration and capacity of the browser 140 and the visual display 120.

[0021] Using the computer mouse 150, or the keyboard 130, or other input means, the searcher 100 may select and pursue one of the links presented by the search results paged (step 235). The browser 140 accesses the web page that corresponds to the selected link (step 240), which web page is called here the first web page for convenience. The browser 140 examines the first web page, looking for links from the first web page to a second web page (step 245). If no such link is found, the process ends (step 250). Otherwise (i.e., a link is found from the first web page to a second web page), the web browser 140 compares the URL of the second web page to the set of URLs stored in the memory 160 (step 255).

[0022] If the URL of the second web page is found in the list of URLs stored in the memory 160, the browser 140 marks the link on the first web page (step 260), and the process ends (step 250). Otherwise (i.e., the URL of the second web page is not found in the list of URLs in the memory 160) the process ends (step 250).

[0023] A link may be marked, for example, by altering the characteristics of its appearance on the visual display 120. The appearance may be altered by, for example, highlighting the link, changing the color used to display the link, changing the font used to display the link, causing the link to appear and disappear (to blink), alternating fonts or colors, alternating highlighting and the absence of highlighting, and so forth.

[0024]FIG. 3 shows aspects of the operation of a second embodiment of the invention. The browser 140 accesses a first web page specified by the searcher 100 (step 300). The browser 140 then examines the first web page, looking for a link from the first web page to a second web page (step 305). If no such link is found, the process ends (step 310).

[0025] Otherwise (i.e., a link is found from the first web page to a second web page), the browser 140 accepts search criteria entered by the searcher 100 (step 315). It is important to note that the step of accepting search criteria from the searcher 100 (step 315) may occur earlier in the operation of the present invention. The browser 140 sends the search criteria and the URL that identifies the second web page to the search engine 180 (step 320), in order that the search engine 180 might determine whether the second web page satisfies the search criteria.

[0026] The search engine 180 determines whether the second web page satisfies the search criteria.(step 325), and informs the browser 140 of the determination by the search engine 180 (step 330). If the second web page does not satisfy the search criteria, the process ends (step 310). Otherwise (i.e., the second web page satisfies the search criteria), the browser marks the link from the first web page to the second web page (step 335), and the process ends (step 310).

[0027] From the foregoing description, those skilled in the art will recognize that the present invention provides useful guidance that takes a searcher through linked web pages, so that the searcher may take full advantage of the wealth of information accessible through the Internet. Once taught the present invention, those skilled in the art will recognize that the above descriptions of two embodiments of the invention are shown as single threads only for clarity of illustration, and that each of the embodiments may readily be re-cast to accommodate more than one thread. For example, the operation of the first embodiment may, of course, consider links from the first web page to a third web page, to a forth web page, and so on, marking these links when appropriate, rather than ending after considering only the link from the first web page to the second web page. Similarly, the operation of the second embodiment might send more than one URL from the browser to the search engine rather than a single URL, and mark the associated links appropriately. In these and other ways, the foregoing description of the invention is illustrative rather than limiting, and the present invention is limited only by the following claims. 

We claim:
 1. A method for identifying links to web pages of interest, comprising the steps of: storing, in a memory, a set of URLs found by a search engine in a search; accessing a first web page identified by a first URL included in the set of URLs found by the search engine; finding, in the first web page, a link to a second web page identified by a second URL; determining whether the second URL is included in the set of URLs stored in the memory; and marking the link when the second URL is included in the set of URLs stored in the memory.
 2. The method of claim 1, wherein the step of marking further includes the step of highlighting a presentation of the link on a visual display.
 3. The method of claim 1, wherein the step of marking further includes the step of changing a color of a presentation of the link by a visual display.
 4. The method of claim 1, wherein the step of marking further includes the step of changing a font of a presentation of the link by a visual display.
 5. A method for identifying links to web pages of interest, comprising the steps of: receiving a set of URLs found by a search engine in a search; storing a subset of the set of URLs in a memory; accessing a first web page identified by a URL included in the set of URLs found by the search engine; finding, in the first web page, a link to a second web page identified by a second URL; determining whether the second URL is included in the subset of the set of URLs stored in the memory; and marking the link when the second URL is included in the subset of the set of URLs stored in the memory.
 6. The method of claim 5, wherein the subset is a proper subset.
 7. The method of claim 5, wherein the step of marking further includes the step of highlighting a presentation of the link by a visual display.
 8. The method of claim 5, wherein the step of marking further includes the step of changing a color of a presentation of the link by a visual display.
 9. The method of claim 5, wherein the step of marking further includes the step of changing a font of a presentation of the link by a visual display.
 10. A method for identifying links to web pages of interest, comprising the steps of: accessing a first web page; finding, in the first web page, a link to a second web page; providing search criteria to a search engine; determining, by the search engine, whether the second web page satisfies the search criteria; marking the link when the second web page satisfies the search criteria.
 11. The method of claim 10, wherein the step of providing search criteria further includes the steps of accepting search criteria entered by a searcher into a browser and sending the search criteria from the browser to the search engine.
 12. The method of claim 10, further including the step sending a URL that identifies the second web page from a browser to the search engine.
 13. Programmable media containing programmable software to identify links to web pages of interest to a searcher, programmable software comprising the steps of: storing, in a memory, a set of URLs found by a search engine in a search; accessing a first web page identified by a first URL included in the set of URLs found by the search engine; finding, in the first web page, a link to a second web page identified by a second URL; determining whether the second URL is included in the set of URLs stored in the memory; and marking the link when the second URL is included in the set of URLs stored in the memory.
 14. Programmable media containing programmable software to identify links to web pages of interest to a searcher, programmable software comprising the steps of: receiving a set of URLs found by a search engine in a search; storing a subset of the set of URLs in a memory; accessing a first web page identified by a URL included in the set of URLs found by the search engine; finding, in the first web page, a link to a second web page identified by a second URL; determining whether the second URL is included in the subset of the set of URLs stored in the memory; and marking the link when the second URL is included in the subset of the set of URLs stored in the memory.
 15. The programmable media of claim 14, wherein the subset is a proper subset.
 16. Programmable media containing programmable software to identify links to web pages of interest to a searcher, programmable software comprising the steps of: accessing a first web page; finding, in the first web page, a link to a second web page; providing search criteria to a search engine; determining, by the search engine, whether the second web page satisfies the search criteria; marking the link when the second web page satisfies the search criterion.
 17. The programmable media of claim 16, wherein the step of providing search criteria further includes the steps of accepting search criteria entered by a searcher into a browser and sending the search criteria from the browser to the search engine.
 18. The programmable media of claim 16, further including the step sending a URL that identifies the second web page from a browser to the search engine. 